﻿#pragma once

#include <glad/glad.h>
#include <string>
#include <fstream>
#include <iostream>
#include <sstream>

class Shader
{
public:
    // Thr program ID.
    unsigned int ID = 0;

    // Constructor
    Shader(const char* vertexPath, const char* fragmentPath);

    ~Shader();

    // User/Activate the shader.
    void Use();

    // Utility uniform functions.
    void setBool(const std::string& name, bool value) const;
    void setInt(const std::string& name, int value) const;
    void setFloat(const std::string& name, float value) const;
};
